Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: add page for community components #3378

Merged
merged 25 commits into from
Mar 1, 2025

Conversation

jo-chemla
Copy link
Contributor

@jo-chemla jo-chemla commented Oct 11, 2024

Following the issue #3377 I opened earlier today, here is a PR that adds a page to the Getting Started section listing external/community r3f components that have not been merged to drei or part of the pmndrs github org. Preview is here!

I've added all the components I know of, feel free to add more before merging!

Not docs does not seem to take the screenshot_url param visible here of the <Codesandbox /> component.

Copy link

codesandbox-ci bot commented Oct 11, 2024

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit 3889166:

Sandbox Source
example Configuration

@abernier
Copy link
Member

as discussed on X, maybe a bit redundant with Discord's Showcase channel i think

@abernier
Copy link
Member

abernier commented Oct 13, 2024

or we could write a <DiscordShowcases staffPicked> component (using Discord api), that displays all "staff-picked" tagged showcases, but again it would be redundant with such view that Discord already implement https://discord.com/channels/740090768164651008/1047453248044412968

  1. => at least (without implementing anything into docs.) maybe we can introduce that staff-picked tag?
  2. => Or, instead of an arbitrary choice by the "staff", we could let reactions like 😍/🔥 speak for themselves. We can maybe just put a link to Discord Showcase into the docs. website into the examples page, nothing more

I'm for 2.

@jo-chemla
Copy link
Contributor Author

Thanks for the feedback on X and here! Here is my take regarding the points you mentioned:

I've been a long-time user of r3f/drei, but never saw a community collection of projects that did gather large threejs projects that expose react/r3f components. I'm thinking about large-scale projects rather than small set of utility reusable components, like other kind of renderers - 3d-tiles renderers from gkjohnson or nytimes r&d, luma labs gaussian splat renderer, looking glass etc. It would make sense to integrate it within the r3f doc for both discoverability - for those not on discord, or who rely a lot on exploring doc + github - and showcase, which could also in turn facilitate other teams/devs to add value to the fiber ecosystem.

Regarding maintenance/curation of the selection of projects to add to this page, this should probably be at the discretion of the pmndrs team which hosts the doc page, with community contributions for adding new projects or removing outdated ones suggested via PRs the same way anyone could contribute more codesandboxes examples to the example docs page.

I'm in favor of dissociating pages for

  • showcase + examples, the existing one - which often embed small components within the sandboxes themselves, but could also be stored on outside repos - great for demo/learning/reuse of utilities
  • from full-fledged projects like the 3D-tiles renderers, CustomShaderMaterial or the luma and looking-glass renderers, which are more complex, dedicated to a scoped use that will probably never be integrated into drei or a pmndrs repo.

Looking forward to hearing your thoughts!

@jo-chemla
Copy link
Contributor Author

Hi there, is there any feedback from others - either from the pmndrs team or outside - regarding this PR? I've integrated the feedback from @abernier to merge the community components into a section of the showcase page, but I'm open to extract it back to its own page if deemed useful.

Looking forward to hearing your feedback!

@jo-chemla
Copy link
Contributor Author

Coming back on this after the new year, I think it made more sense to explode the existing, doc Examples page and the one I added via this PR, Community Components, which references heavier r3f projects I split among Data sources, Renderers & frameworks, Materials and Utilities.

Any thoughts on this from the pmndrs team?

@CodyJasonBennett
Copy link
Member

This got missed. @drcmda, what do you think of this addition? I know you had full authorship of examples prior.

@jo-chemla
Copy link
Contributor Author

jo-chemla commented Feb 17, 2025

Current version of the page is accessible here - just added the incredible takram clouds and atmosphere repos if you want a quick look. Don't hesitate if you need any edits.

Note I stumbled on the pmndrs/docs repo on something I think is a minor bug, which prevents the user from setting eg screenshot_url to codesandboxes, due to the fact user-provided props and data fetched from CSB is destructured the wrong way around. PR is here.

Therefore I tried forking some codesandboxes to edit the thumbnail/screenshot, but did not successfully do it atm. Once this gets merged we can probably update these csb-ids with the original ones from the corresponding repos docs.

See fix here pmndrs/docs#375
Fixed the fact that the ordering of props destructuring prevented applying custom screenshot_url to CSBs
@jo-chemla
Copy link
Contributor Author

Hi again, just did the final touch-ups following the merge of my fix for pmndrs/docs, so I could add original CodeSandboxes from the official repos of each project, with a user-controlled screenshot-urls for those that were missing.

Everything is good to go from my point-of-view!

@CodyJasonBennett CodyJasonBennett changed the title Add r3f doc for community components docs: add page for community components Mar 1, 2025
@CodyJasonBennett CodyJasonBennett merged commit d4e2081 into pmndrs:master Mar 1, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants